home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Languguage OS 2
/
Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO
/
a_utils
/
compiler
/
makefile
< prev
next >
Wrap
Makefile
|
1994-10-29
|
10KB
|
324 lines
# *************************************************************************
# * *
# * Makefile for *
# * *
# * Compiler Construction Tool Box *
# * ============================== *
# * *
# * Copyright (c) 1989, 1990, 1991, 1992 by *
# * *
# * Gesellschaft fuer Mathematik und Datenverarbeitung *
# * (German National Research Center for Computer Science) *
# * Forschungsstelle fuer Programmstrukturen *
# * an der Universitaet Karlsruhe *
# * *
# * All rights reserved. GMD assumes no responsibility for the use *
# * or reliability of its software. *
# * *
# *************************************************************************
# Choose a suitable C compiler
CC = cc
# Choose optimizer flags for the C compiler
OPT =
# Choose a suitable Modula compiler
# MC or M2C
MC = MC
# BSD needs this
MAKE = make
# The place to install the binaries
BIN = $(HOME)/bin
# The libraries go there
LIB = $(HOME)/lib
# Directory for man pages
MANDIR = $(HOME)/lib
# Where to put include files for reuse
INCDIR = $(LIB)/include
# The following targets are legal:
# PCS10
# PCS20
# SUN (also valid for DECstations and VAX)
TARGET = SUN
# For PCS10 you must define
# OPT = "-DPCS10"
# Choose the source language:
LANGUAGE = c
# LANGUAGE = modula
# ****************************************************************
# * DON'T CHANGE ANYTHING BELOW THIS LINE !
# ****************************************************************
MFLAGS = BIN=$(BIN) LIB=$(LIB) CC=$(CC) OPT=$(OPT) MC=$(MC)
CTARGETS = \
reuselib \
c_reuse \
c_common \
c_rex \
c_front \
c_bnf \
c_ell \
c_lalr \
c_l2r \
c_y2l \
c_r2l \
c_rpp \
c_cg \
c_puma \
c_estra
MTARGETS = \
reuselib \
m_reuse \
m_common \
m_rex \
m_front \
m_bnf \
m_ell \
m_lalr \
c_l2r \
c_y2l \
m_r2l \
m_rpp \
m_cg \
m_puma \
m_mpp \
m_estra
all: $(LANGUAGE)
install: install$(LANGUAGE)
reuselib:
@echo; echo "Making public reuse library"
cd reuse/c; $(MAKE) $(MFLAGS) TARGET=$(TARGET)
c: $(CTARGETS)
c_reuse:
@echo; echo "Making local reuse library"
cd reuse/m2c; $(MAKE) $(MFLAGS)
c_common:
@echo; echo "Making common"
cd common/m2c; $(MAKE) $(MFLAGS)
c_rex:
@echo; echo "Making rex"
cd rex/m2c; $(MAKE) $(MFLAGS)
c_front:
@echo; echo "Making front"
cd front/m2c; $(MAKE) $(MFLAGS)
c_bnf:
@echo; echo "Making bnf"
cd bnf/m2c; $(MAKE) $(MFLAGS)
c_ell:
@echo; echo "Making ell"
cd ell/m2c; $(MAKE) $(MFLAGS)
c_lalr:
@echo; echo "Making lalr"
cd lalr/m2c; $(MAKE) $(MFLAGS)
c_l2r:
@echo; echo "Making l2r"
cd l2r/src; $(MAKE) $(MFLAGS)
c_y2l:
@echo; echo "Making y2l"
cd y2l/src; $(MAKE) $(MFLAGS)
c_r2l:
@echo; echo "Making r2l"
cd r2l/m2c; $(MAKE) $(MFLAGS)
c_rpp:
@echo; echo "Making rpp"
cd rpp/m2c; $(MAKE) $(MFLAGS)
c_cg:
@echo; echo "Making cg"
cd cg/m2c; $(MAKE) $(MFLAGS)
c_puma:
@echo; echo "Making puma"
cd puma/m2c; $(MAKE) $(MFLAGS)
c_estra:
@echo; echo "Making estra"
cd estra/m2c; $(MAKE) $(MFLAGS)
installc: c_reuse c_common
sh -c "if test ! -d $(BIN); then mkdir $(BIN); else true; fi"
sh -c "if test ! -d $(LIB); then mkdir $(LIB); else true; fi"
sh -c "if test ! -d $(MANDIR); then mkdir $(MANDIR); else true; fi"
sh -c "if test ! -d $(INCDIR); then mkdir $(INCDIR); else true; fi"
cd reuse/c ; $(MAKE) install $(MFLAGS) TARGET=$(TARGET) INCDIR=$(INCDIR)
cd rex/m2c ; $(MAKE) install $(MFLAGS)
cd front/m2c ; $(MAKE) install $(MFLAGS)
cd bnf/m2c ; $(MAKE) install $(MFLAGS)
cd ell/m2c ; $(MAKE) install $(MFLAGS)
cd lalr/m2c ; $(MAKE) install $(MFLAGS)
cd front/doc ; $(MAKE) install $(MFLAGS)
cd l2r/src ; $(MAKE) install $(MFLAGS)
cd y2l/src ; $(MAKE) install $(MFLAGS)
cd r2l/m2c ; $(MAKE) install $(MFLAGS)
cd rpp/m2c ; $(MAKE) install $(MFLAGS)
cd cg/m2c ; $(MAKE) install $(MFLAGS)
cd puma/m2c ; $(MAKE) install $(MFLAGS)
cd estra/m2c ; $(MAKE) install $(MFLAGS)
cd man; cp * $(MANDIR); chmod a+r $(MANDIR)/*.1
modula: $(MTARGETS)
m_reuse:
@echo; echo "Making local reuse library"
cd reuse/src; $(MAKE) $(MFLAGS)
m_common:
@echo; echo "Making common"
cd common/src; $(MAKE) $(MFLAGS)
m_rex:
@echo; echo "Making rex"
cd rex/src; $(MAKE) $(MFLAGS)
m_front:
@echo; echo "Making front"
cd front/src; $(MAKE) $(MFLAGS)
m_bnf:
@echo; echo "Making bnf"
cd bnf/src; $(MAKE) $(MFLAGS)
m_ell:
@echo; echo "Making ell"
cd ell/src; $(MAKE) $(MFLAGS)
m_lalr:
@echo; echo "Making lalr"
cd lalr/src; $(MAKE) $(MFLAGS)
m_r2l:
@echo; echo "Making r2l"
cd r2l/src; $(MAKE) $(MFLAGS)
m_rpp:
@echo; echo "Making rpp"
cd rpp/src; $(MAKE) $(MFLAGS)
m_cg:
@echo; echo "Making cg"
cd cg/src; $(MAKE) $(MFLAGS)
m_puma:
@echo; echo "Making puma"
cd puma/src; $(MAKE) $(MFLAGS)
m_mpp:
@echo; echo "Making mpp"
cd mpp/src; $(MAKE) $(MFLAGS)
m_estra:
@echo; echo "Making estra"
cd estra/src; $(MAKE) $(MFLAGS)
installmodula: m_reuse m_common
sh -c "if test ! -d $(BIN); then mkdir $(BIN); else true; fi"
sh -c "if test ! -d $(LIB); then mkdir $(LIB); else true; fi"
sh -c "if test ! -d $(MANDIR); then mkdir $(MANDIR); else true; fi"
sh -c "if test ! -d $(INCDIR); then mkdir $(INCDIR); else true; fi"
cd reuse/c ; $(MAKE) install $(MFLAGS) TARGET=$(TARGET) INCDIR=$(INCDIR)
cd rex/src ; $(MAKE) install $(MFLAGS)
cd front/src ; $(MAKE) install $(MFLAGS)
cd bnf/src ; $(MAKE) install $(MFLAGS)
cd ell/src ; $(MAKE) install $(MFLAGS)
cd lalr/src ; $(MAKE) install $(MFLAGS)
cd front/doc ; $(MAKE) install $(MFLAGS)
cd l2r/src ; $(MAKE) install $(MFLAGS)
cd y2l/src ; $(MAKE) install $(MFLAGS)
cd r2l/src ; $(MAKE) install $(MFLAGS)
cd rpp/src ; $(MAKE) install $(MFLAGS)
cd cg/src ; $(MAKE) install $(MFLAGS)
cd puma/src ; $(MAKE) install $(MFLAGS)
cd mpp/src ; $(MAKE) install $(MFLAGS)
cd estra/src ; $(MAKE) install $(MFLAGS)
cd man; cp * $(MANDIR); chmod a+r $(MANDIR)/*.1
endian:
cd hexa ; $(MAKE) endian; endian
bin.conv:
-cd cg/m2c ; $(MAKE) bin.conv
-cd cg/src ; $(MAKE) bin.conv
-cd ell/m2c ; $(MAKE) bin.conv
-cd ell/src ; $(MAKE) bin.conv
-cd estra/m2c ; $(MAKE) bin.conv
-cd front/m2c ; $(MAKE) bin.conv
-cd front/src ; $(MAKE) bin.conv
-cd puma/m2c ; $(MAKE) bin.conv
-cd puma/src ; $(MAKE) bin.conv
-cd r2l/m2c ; $(MAKE) bin.conv
-cd rex/m2c ; $(MAKE) bin.conv
-cd rex/src ; $(MAKE) bin.conv
-cd rpp/m2c ; $(MAKE) bin.conv
test:
-cd specs/c/ada ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR)
-cd specs/c/c ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR)
-cd specs/c/c++ ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR)
-cd specs/c/modula2 ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR)
-cd specs/c/modula2.ell ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR)
-cd specs/c/sather ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR)
-cd specs/c/sql ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR)
-cd specs/c/oberon2 ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR)
-cd specs/c/minilax ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR) minilax
-cd specs/c/wag ; $(MAKE) -i LIB=$(LIB) INCDIR=$(INCDIR) minilax
-cd specs/modula/ada ; $(MAKE) -i
-cd specs/modula/modula2 ; $(MAKE) -i
-cd specs/modula/modula2.ell ; $(MAKE) -i
-cd specs/modula/modula3 ; $(MAKE) -i
-cd specs/modula/oberon ; $(MAKE) -i
-cd specs/modula/pascal ; $(MAKE) -i
-cd specs/modula/minilax ; $(MAKE) -i minilax
-cd specs/modula/wag ; $(MAKE) -i minilax
clean:
-cd reuse/c ; $(MAKE) clean
-cd reuse/src ; $(MAKE) clean
-cd common/src ; $(MAKE) clean
-cd rex/src ; $(MAKE) clean
-cd rex/test ; $(MAKE) clean
-cd front/src ; $(MAKE) clean
-cd bnf/src ; $(MAKE) clean
-cd lalr/src ; $(MAKE) clean
-cd ell/src ; $(MAKE) clean
-cd l2r/src ; $(MAKE) clean
-cd y2l/src ; $(MAKE) clean
-cd r2l/src ; $(MAKE) clean
-cd rpp/src ; $(MAKE) clean
-cd cg/src ; $(MAKE) clean
-cd puma/src ; $(MAKE) clean
-cd mpp/src ; $(MAKE) clean
-cd estra/src ; $(MAKE) clean
-cd reuse/m2c ; $(MAKE) clean
-cd common/m2c ; $(MAKE) clean
-cd rex/m2c ; $(MAKE) clean
-cd front/m2c ; $(MAKE) clean
-cd bnf/m2c ; $(MAKE) clean
-cd lalr/m2c ; $(MAKE) clean
-cd ell/m2c ; $(MAKE) clean
-cd r2l/m2c ; $(MAKE) clean
-cd rpp/m2c ; $(MAKE) clean
-cd cg/m2c ; $(MAKE) clean
-cd puma/m2c ; $(MAKE) clean
-cd estra/m2c ; $(MAKE) clean
-cd specs/c/ada ; $(MAKE) clean
-cd specs/c/c ; $(MAKE) clean
-cd specs/c/c++ ; $(MAKE) clean
-cd specs/c/modula2 ; $(MAKE) clean
-cd specs/c/modula2.ell ; $(MAKE) clean
-cd specs/c/sather ; $(MAKE) clean
-cd specs/c/sql ; $(MAKE) clean
-cd specs/c/oberon2 ; $(MAKE) clean
-cd specs/c/minilax ; $(MAKE) clean
-cd specs/c/wag ; $(MAKE) clean
-cd specs/modula/ada ; $(MAKE) clean
-cd specs/modula/modula2 ; $(MAKE) clean
-cd specs/modula/modula2.ell ; $(MAKE) clean
-cd specs/modula/modula3 ; $(MAKE) clean
-cd specs/modula/oberon ; $(MAKE) clean
-cd specs/modula/pascal ; $(MAKE) clean
-cd specs/modula/minilax ; $(MAKE) clean
-cd specs/modula/wag ; $(MAKE) clean